# -*- coding: utf-8 -*-
# @project: huawang-api20230914
# @file： logingPage.py
# @Time：2023/9/8 09:32
# @Author：liaogan
from time import sleep

from common.commin.basePage import BasePage
from config.env import Env
from po.yk.ht.yk_mainPage import MainPage


class LoginPage(BasePage):
    """
    登录页
        - 打开登录页
        - 登录
    """
    # PO5 Need not represent an entire page
    #   当前要测试登录，就写了登录的方法，商家入驻等暂无需要测试就不实现
    def open_yk_loginpage(self,url=Env.HOST):
        """
        打开宝利商城登录页
        Args:
            url: 宝利商城的登录页URL，默认由配置文件提供

        Returns: None

        """
        self.open_url(url)
        return self

    def login_polly_old(self,username,password):
        """
        登录宝利商城，提供用户名密码(是可变)
            1. 输入用户名
            2. 输入密码
            3. 点击登录按钮
        Args:
            username: 用户名
            password: 密码
        Returns: None

        """
        # PO2 Try not to expose the internals of the page
        # 看不到我们的元素
        import warnings
        warnings.warn('this method has been deprecated!please use input instead.', DeprecationWarning)

        self.input_text(Elements.USERNAME_LOCATOR,username)
        self.input_text(Elements.PASSWORD_LOCATOR,password)
        self.click_element(Elements.LOGIN_BUTTON_LOCATOR)

    def login_yk(self,username,password,VerificationCode):
        self.input_text(self.username_input,username)
        self.input_text(self.password_input,password)
        self.input_text(self.VerificationCode_input,VerificationCode)
        self.click_element(self.login_button)
        sleep(3)
        return MainPage()


if __name__ == '__main__':
    test_flag = 1
    if test_flag ==1:
        # 第一次运行 多个key ，多拿了页面
        # 第二次运行 只有本页面了，
        # 第三次运行， 元素名成了类的属性
        loginpage = LoginPage()
        from objprint import op
        op(loginpage)


